System and method for adaptively separating foreground from arbitrary background in presentations

ABSTRACT

System and method for distinguishing between foreground content and background content in an image presentation. An initial background model is provided, and a final background model is constructed from the initial background model using the image presentation. The foreground content and background content in the image presentation are then distinguished from one another using the final background model. The present invention permits foreground content and background content to be separated from one another for further processing in different types of computer-generated image presentations such as digital slide presentations, video presentations, Web page presentations, and the like.

This application is a continuation of application Ser. No. 11/034,583filed Jan. 13, 2005, status pending.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates generally to the field of multimediacontent analysis and, more particularly, to a system and method fordistinguishing between foreground content and background content in animage presentation.

2. Description of Related Art

Figure-ground separation relates to the capability of distinguishingbetween foreground material and background material in an image, and isa fundamental problem in image processing applications. For example,consider an image that contains a boy playing with a ball on a beach. Ifthe objective is to identify the boy, the boy with the ball is theforeground and the beach is the background. If, however, the objectiveis to identify the beach or waves breaking on the beach, the beachbecomes the foreground and everything else in the image becomesbackground.

The human visual system is able to effortlessly separate foregroundcontent from background content in a viewed image by combining variousclues to decipher the foreground based on current interest. An imageprocessing system also faces the task of figure-ground separationbecause further image recognition procedures can proceed effectivelyonly if the foreground content of an image is first well separated frombackground content. Most image processing systems use externallydetermined policies to drive a figure-ground separation module, suchthat the system knows ahead of time what the foreground of an image isexpected to be. If the foreground is not known in advance, however,problems may occur in correctly separating foreground content frombackground content in different types of image presentations.

When communicating to an audience, for example, when giving a speech orteaching a course to a group of students; it is a common practice towrite or otherwise provide information on a transparency, such as aslide or a foil, and to project the information onto a screen using aprojector so that the information may be easily viewed by the audience.Recently, computer-generated presentation has become a popular andprofessional way to provide visual materials to an audience. Withcomputer-generated presentation, a computer is directly connected to adigital projector, thus avoiding the need for physical media such asslides or foils. As used in the present application, a presentation isany document that may contain one or more types of media data such astext material, images and graphics. Some examples of computer-generatedpresentation types include digital slide presentations, Web pagepresentations, Microsoft Word® document presentations, and the like.

A digital slide presentation, for example, is created using computersoftware such as Microsoft Power Point® or Lotus Freelance Graphics®,rather than being hand-drawn or hand-written as with conventionalslides. Digital slides commonly include text-based information, and mayalso include some figures, tables or animation materials. Inasmuch asPower Point and Lotus Freelance Graphics design templates provide a richset of choices, the pages in these presentations (i.e., the individualslides) often include a relatively complex background, for example, abackground that varies in color or texture, or a background thatincludes one or more images; rather than a blank background or abackground of a single uniform color. A user often selects relativelycomplex backgrounds for an image presentation to improve the clarity andvisual appeal of the presentation and to satisfy aesthetic preferences.

While the diverse backgrounds available using Microsoft Power Point orLotus Freelance Graphics can be effective in enhancing audienceattention, the backgrounds also present a severe challenge to theproblem of automatic presentation content analysis. For example, slidetext recognition techniques have been effectively used to extract textfrom a slide so that the text can be used to index and annotate slidecontent for archival and search purposes. A complex slide background,however, affects the text recognition accuracy to a certain extentbecause separation of foreground text embedded in a complex backgroundbecomes very difficult with automated techniques. This is because mostexisting text separation techniques make initial assumptions about thekinds of background that can be present in the pages, in order tocontrol pixel variations that must be handled.

It would, accordingly, be advantageous to provide a system and methodfor distinguishing between foreground content and background content inan image presentation, such as a computer-generated image presentation,that is effective with diverse types of backgrounds including relativelycomplex backgrounds such as backgrounds that vary in color or texture orthat include one or more images.

SUMMARY OF THE INVENTION

The present invention provides a system and method for distinguishingbetween foreground content and background content in an imagepresentation. An initial background model is provided, and a finalbackground model is constructed from the initial background model usingthe image presentation. The foreground content and background content inthe image presentation are then distinguished from one another using thefinal background model. The present invention is effective indistinguishing between foreground content and background content incomputer-generated image presentations having diverse types ofbackgrounds including relatively complex backgrounds such as backgroundsthat vary in color or texture or that include one or more images.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. The invention itself, however, as well asa preferred mode of use, further objectives and advantages thereof, willbest be understood by reference to the following detailed description ofan illustrative embodiment when read in conjunction with theaccompanying drawings, wherein:

FIG. 1 is a pictorial representation of a data processing system inwhich the present invention may be implemented in accordance with apreferred embodiment of the present invention;

FIG. 2 is a block diagram of a data processing system in which thepresent invention may be implemented in accordance with a preferredembodiment of the present invention;

FIG. 3 is a block diagram of an image processing system for constructinga background model of an image presentation in accordance with apreferred embodiment of the present invention;

FIG. 4 is a flowchart that illustrates a method for separatingforeground content from background content in an image presentation inaccordance with a preferred embodiment of the present invention; and

FIG. 5 is a flowchart that illustrates a method for constructing abackground model of an image presentation in accordance with a preferredembodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With reference now to the figures and in particular with reference toFIG. 1, a pictorial representation of a data processing system in whichthe present invention may be implemented is depicted in accordance witha preferred embodiment of the present invention. A computer 100 isdepicted which includes system unit 102, video display terminal 104,keyboard 106, storage devices 108, which may include floppy drives andother types of permanent and removable storage media, and mouse 110.Additional input devices may be included with personal computer 100,such as, for example, a joystick, touchpad, touch screen, trackball,microphone, and the like. Computer 100 can be implemented using anysuitable computer, such as an IBM eServer computer or IntelliStationcomputer, which are products of International Business MachinesCorporation, located in Armonk, N.Y. Although the depictedrepresentation shows a computer, other embodiments of the presentinvention may be implemented in other types of data processing systems,such as a network computer. Computer 100 also preferably includes agraphical user interface (GUI) that may be implemented by means ofsystems software residing in computer readable media in operation withincomputer 100.

With reference now to FIG. 2, a block diagram of a data processingsystem is shown in which the present invention may be implemented inaccordance with a preferred embodiment of the present invention. Dataprocessing system 200 is an example of a computer, such as computer 100in FIG. 1, in which code or instructions implementing the processes ofthe present invention may be located. Data processing system 200 employsa peripheral component interconnect (PCI) local bus architecture.Although the depicted example employs a PCI bus, other bus architecturessuch as Accelerated Graphics Port (AGP) and Industry StandardArchitecture (ISA) may be used. Processor 202 and main memory 204 areconnected to PCI local bus 206 through PCI bridge 208. PCI bridge 208also may include an integrated memory controller and cache memory forprocessor 202. Additional connections to PCI local bus 206 may be madethrough direct component interconnection or through add-in connectors.In the depicted example, local area network (LAN) adapter 210, smallcomputer system interface (SCSI) host bus adapter 212, and expansion businterface 214 are connected to PCI local bus 206 by direct componentconnection. In contrast, audio adapter 216, graphics adapter 218, andaudio/video adapter 219 are connected to PCI local bus 206 by add-inboards inserted into expansion slots. Expansion bus interface 214provides a connection for a keyboard and mouse adapter 220, modem 222,and additional memory 224. SCSI host bus adapter 212 provides aconnection for hard disk drive 226, tape drive 228, and CD-ROM drive230. Typical PCI local bus implementations will support three or fourPCI expansion slots or add-in connectors.

An operating system runs on processor 202 and is used to coordinate andprovide control of various components within data processing system 200in FIG. 2. The operating system may be a commercially availableoperating system such as Windows XP, which is available from MicrosoftCorporation. An object oriented programming system such as Java may runin conjunction with the operating system and provides calls to theoperating system from Java programs or applications executing on dataprocessing system 200. “Java” is a trademark of Sun Microsystems, Inc.Instructions for the operating system, the object-oriented programmingsystem, and applications or programs are located on storage devices,such as hard disk drive 226, and may be loaded into main memory 204 forexecution by processor 202.

Those of ordinary skill in the art will appreciate that the hardware inFIG. 2 may vary depending on the implementation. Other internal hardwareor peripheral devices, such as flash read-only memory (ROM), equivalentnonvolatile memory, or optical disk drives and the like, may be used inaddition to or in place of the hardware depicted in FIG. 2. Also, theprocesses of the present invention may be applied to a multiprocessordata processing system.

For example, data processing system 200, if optionally configured as anetwork computer, may not include SCSI host bus adapter 212, hard diskdrive 226, tape drive 228, and CD-ROM 230. In that case, the computer,to be properly called a client computer, includes some type of networkcommunication interface, such as LAN adapter 210, modem 222, or thelike. As another example, data processing system 200 may be astand-alone system configured to be bootable without relying on sometype of network communication interface, whether or not data processingsystem 200 comprises some type of network communication interface. As afurther example, data processing system 200 may be a personal digitalassistant (PDA), which is configured with ROM and/or flash ROM toprovide non-volatile memory for storing operating system files and/oruser-generated data.

The depicted example in FIG. 2 and above-described examples are notmeant to imply architectural limitations. For example, data processingsystem 200 also may be a notebook computer or hand held computer inaddition to taking the form of a PDA. Data processing system 200 alsomay be a kiosk or a Web appliance.

The processes of the present invention are performed by processor 202using computer implemented instructions, which may be located in amemory such as, for example, main memory 204, memory 224, or in one ormore peripheral devices 226-230.

FIG. 3 is a block diagram of an image processing system for constructinga background model of an image presentation in accordance with apreferred embodiment of the present invention. The image processingsystem is generally designated by reference number 300, and includes animage processor 302 that may, for example, be implemented as processor202 in data processing system 200 illustrated in FIG. 2. Imageprocessing system 300 also includes an initial universal backgroundmodel (BGM) 304 that has been input to or otherwise provided in imageprocessor 302. Initial BGM 304 is a model of an image presentationbackground and is typically independent of any particular imagepresentation. Initial BGM 304 may, for example, be a model of abackground of a particular color, a blank or empty background, oranother more complex background.

A media stream 306 comprises an input to image processor 302. Mediastream 306 may include one or more image presentation types, forexample, a video presentation, a Power Point slide presentation or a Webpage presentation, that contain both foreground and background content.As will be explained in detail hereinafter, image processor 302gradually adapts initial BGM 304 to construct and output a final BGM 308for each of the one or more image presentation types in media stream306. Final background models 308 are then used to distinguish betweenthe foreground content and the background content in each of the imagepresentation types included in media stream 306 for subsequent imageprocessing procedures.

FIG. 4 is a flowchart that illustrates a method for separatingforeground content from background content in an image presentation inaccordance with a preferred embodiment of the present invention. Themethod is generally designated by reference number 400 and begins byinputting a media stream that contains one or more image presentationtypes (Step 402). A final background model is constructed for each imagepresentation type in the input media stream from an initial backgroundmodel (Step 404), and the final background models are then used todistinguish between foreground content and background content in eachimage presentation type in the media stream (Step 406). The foregroundcontent of each image presentation type may then be separated from thebackground content, for example, by subtracting the background contentfrom the image presentation type, for subsequent image processingprocedures (Step 408).

FIG. 5 is a flowchart that illustrates a method for constructing abackground model of an image presentation in accordance with a preferredembodiment of the present invention. The method is generally designatedby reference number 500 and comprises an implementation of Step 404illustrated in FIG. 4. Method 500 begins by inputting or otherwiseproviding an initial background model (BGM) in an image processor whichis independent of any particular image presentation (Step 502). Theinitial BGM could be a model of a background of a particular color, of ablank background, or of a more complex background. A media stream V isthen input to the image processor (Step 504). Media stream V is of aparticular media data type such as a video, a Power Point slides, a Webpages or another data type. At least one portion of media stream Vcontains a type of presentation content from which a final backgroundmodel will be constructed using the initial BGM.

The content portions P_(i) (i=1, 2, . . . n) in V, where each contentportion P_(i) contains a type of presentation content are identified(Step 506). For example, content portions P₁ and P₂ may contain slides,while content portions P₃ and P₄ may contain Web pages. In this regard,it should be appreciated that P_(i) and P_(i+1) are not necessarilycontinuous in the temporal domain. It should also be noted that if mediacontent V is a Webcast containing only presentation material, step 506can be omitted.

All content portions P_(i) (i=1, 2, . . . n) identified in Step 506 arethen clustered into distinct presentation content sets S, where eachpresentation content set S_(i) (i=1, 2 . . . m) contains those contentportions that have the same type of presentation content (Step 508). Forexample, content portions P₁ and P₂ could be clustered into presentationcontent set S₁ and content portions P₃ and P₄ can be clustered intopresentation content set S₂. The clustering scheme should be sensitiveenough to place content portions that vary in background into distinctclusters without having to predetermine which is foreground and which isbackground.

Then, for each presentation content set S_(i) (i is initialized to 1),presentation pages PP whose foregrounds are distinct from each other butwhose backgrounds remain the same are identified (Step 510). Forexample, presentation pages could be individual slides in thepresentation content set S₁ in case of P₁ and P₂ and individual Webpages in S₂ in case of P₃ and P₄. If necessary, the presentation pagesare normalized to be the same size prior to comparing the pages in Step514.

The result of Step 510 is an identified set of presentation pages PP_(j)and PP_(j+1) (j is initialized to 1, and j+1 indicates a nextpresentation page) within presentation content set S_(i) (Step 512).Potential background pixels in presentation pages PP_(j) and PP_(j+1)are then located by measuring the sameness and difference of thepresentation pages (Step 514). The located potential background pixelsare then incorporated into the initial BGM to provide updated BGM′ (Step516).

A determination is then made if BGM′ equals BGM (Step 518). If BGM′ doesnot equal BGM (No output of Step 518), this means the background modelrequires further updating. In this case, BGM′ is considered to be BGMand j+1 is considered to be j (Step 520), and Steps 514 through 518 arerepeated by considering a next pair of presentation pages. If, on theother hand, BGM′ equals BGM (Yes output of Step 518), this means thebackground model has reached a stable state and no more presentationpages are needed to continue the adaptation process. BGM′ is then outputas the final background model for presentation content set S_(i) (Step522). The number of iterations required to complete this adaptationprocess varies from application to application, and depends on thecontent complexity of both presentation foreground and background.However, at least two iterations are needed for a complete adaptationprocess.

A determination is then made if all presentation content sets have beenprocessed (Step 524). If not, (No output of Step 524), the processcontinues by selecting the next presentation content set and obtainingthe initial BGM (Step 526), and then repeating Steps 510 through 524. Ifall presentation content sets have been processed (Yes output of Step524), the method ends. The resulting final BGM for each presentationcontent set can then be used to distinguish between foreground contentand background content in each presentation content set for furtherimage processing as described in connection with FIG. 4.

Depending on the content nature of media stream V, Steps 506 to 510could be realized by applying various media content analysis and machinelearning techniques. Furthermore, in real applications, the particularpresentation background model in Step 502 could be selected andconstructed in various ways. For instance, in a simple case, the initialbackground model could be a bitmap where each bit refers to one imagepixel indicating whether or not it is a background pixel. In this case,the model update in Step 516 will only involve simple bit valuesettings. Alternatively, more complex statistical models could beapplied including Gaussian mixture model (GMM), hidden Markov model(HMM) and Bayesian network.

The present invention thus provides a system and method fordistinguishing between foreground content and background content in animage presentation. An initial background model is provided, and a finalbackground model is constructed from the initial background model usingthe image presentation. The foreground content and background content inthe image presentation are then distinguished from one another using thefinal background model. The present invention is effective indistinguishing between foreground content and background content incomputer-generated image presentations having diverse types ofbackgrounds including relatively complex backgrounds such as backgroundsthat vary in color or texture or that include one or more images.

The present invention can be utilized in numerous image processingapplications. For example, by using a final background model constructedfor a particular slide presentation in accordance with the presentinvention, the foreground content of the slides can be easily andcleanly extracted from the slides and can be fed into a slide textrecognition scheme for automatic slide content analysis. Also, when theforeground has been separated from the background, different slides canbe easily compared against each other without being disturbed bydifferent backgrounds. This can be useful to identify particular slidesfrom a large collection of slides that contain the same text content butthat have different backgrounds, and that match a query slide. In asimilar manner, the present invention can also be used to identifyunauthorized uses/copies of presentations. Slides could also be comparedbased on their backgrounds (i.e., by subtracting the foreground contentfrom the slides) to determine if the slides are from the samepresentation or for other purposes.

It is important to note that while the present invention has beendescribed in the context of a fully functioning data processing system,those of ordinary skill in the art will appreciate that the processes ofthe present invention are capable of being distributed in the form of acomputer readable medium of instructions and a variety of forms and thatthe present invention applies equally regardless of the particular typeof signal bearing media actually used to carry out the distribution.Examples of computer readable media include recordable-type media, suchas a floppy disk, a hard disk drive, a RAM, CD-ROMs, DVD-ROMs, andtransmission-type media, such as digital and analog communicationslinks, wired or wireless communications links using transmission forms,such as, for example, radio frequency and light wave transmissions. Thecomputer readable media may take the form of coded formats that aredecoded for actual use in a particular data processing system.

The description of the present invention has been presented for purposesof illustration and description, and is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the art. Theembodiment was chosen and described in order to best explain theprinciples of the invention, the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

1. A computer-implemented method, implementing instructions stored in arecordable-type computer readable storage medium in an image processingsystem, for distinguishing between foreground content and backgroundcontent in an image presentation, the computer-implemented methodcomprising: providing an initial background model on a data processingsystem that is independent of any particular image presentation;identifying presentation pages of a set of presentation pages of theimage presentation, wherein the foreground content of each identifiedpresentation page of the set of presentation pages are distinct and thebackground content of each identified presentation page of the set ofpresentation pages are the same, and wherein the presentation pages arepart of a media stream provided to an image processor, wherein the mediastream comprises a plurality of image presentation types; clustering aplurality of content portions from the identified presentation pagesinto a plurality of distinct presentation content sets, wherein eachpresentation content set contains content portions that have a sameimage presentation type; locating potential background pixels bycomparing a first presentation page to a second presentation page,wherein the first presentation page and the second presentation page arelocated in a same set in the plurality of distinct presentation contentsets; updating the initial background model by incorporating the locatedpotential background pixels into the initial background model to form anupdated initial background model; determining whether the updatedinitial background model and the initial background model are the same;responsive to determining that the updated initial background model andthe initial background model are the same: outputting the updatedinitial background model; distinguishing between the foreground contentand the background content in each image presentation page of theplurality of presentation pages using the updated initial backgroundmodel; and repeating the steps of comparing the clustered contentportions through the step of distinguishing between the foregroundcontent and the background content for each remaining set of thedistinct presentation content sets.
 2. The computer-implemented methodaccording to claim 1, and further comprising: responsive to determiningthat the updated initial background model and the initial backgroundmodel are not the same: identifying further presentation pages of theset of presentation pages whose foreground content are distinct andwhose background content are the same; comparing the identified furtherpresentation pages to locate further potential background pixels;further updating the updated initial background model by incorporatingthe further located potential background pixels into the updated initialbackground model to form a further updated initial background model;outputting the further updated initial background model; anddistinguishing between the foreground content and the background contentin each presentation page of the plurality of presentation pages usingthe further updated initial background model.
 3. Thecomputer-implemented method according to claim 2, and furthercomprising: repeating the steps of identifying further presentationpages, comparing the identified further presentation pages and furtherupdating the updated initial background model until an updatedbackground model reaches a steady state.
 4. The computer-implementedmethod according to claim 1, wherein the image presentation comprises acomputer-generated image presentation.
 5. The computer-implementedmethod according to claim 4, wherein the computer-generated imagepresentation comprises one of a digital slide presentation, a Web pagepresentation and a video presentation.
 6. An image processing system fordistinguishing between foreground content and background content in animage presentation, comprising: a storage medium storing a set ofinstructions; and a processor, wherein the processor executes the set ofinstructions to provide an initial background model on a data processingsystem that is independent of any particular image presentation; toidentify presentation pages of a set of presentation pages of the imagepresentation, wherein the foreground content of each identifiedpresentation page of the set of presentation pages are distinct and thebackground content of each identified presentation page of the set ofpresentation pages are the same, and wherein presentation pages are partof a media stream provided to an image processor, wherein the mediastream comprises a plurality of image presentation types; to clustercontent portions from the identified presentation pages into a pluralityof distinct presentation content sets, wherein each presentation contentset contains content portions that have a same image presentation type;to locate potential background pixels by comparing a first presentationpage to a second presentation page, wherein the first presentation pageand the second presentation page are located in a same set in theplurality of distinct presentation content sets; to update the initialbackground model by incorporating the located potential backgroundpixels into the initial background model to form an updated initialbackground model; to determine whether the updated initial backgroundmodel and the initial background model are the same; to, responsive todetermining that the updated initial background model and the initialbackground model are the same, output the updated initial backgroundmodel, and distinguish between the foreground content and the backgroundcontent in each image presentation page of the plurality of presentationpages using the updated initial background model; and to repeat thesteps of comparing the clustered content portions through the step ofdistinguishing between the foreground content and the background contentfor each remaining set of the distinct presentation content sets.
 7. Thesystem according to claim 6, wherein the image presentation comprises acomputer-generated image presentation.
 8. The system according to claim7, wherein the computer-generated image presentation comprises one of adigital slide presentation, a Web page presentation and a videopresentation.
 9. The system according to claim 6, wherein the processorfurther executes the set of instructions to, responsive to determiningthat the updated initial background model and the initial backgroundmodel are not the same, identify further presentation pages of the setof presentation pages whose foreground content are distinct and whosebackground content are the same; compare the identified furtherpresentation pages to locate further potential background pixels;further update the updated initial background model by incorporating thefurther located potential background pixels into the updated initialbackground model to form a further updated initial background model;output the further updated initial background model; and distinguishbetween the foreground content and the background content in each imagepresentation page of the plurality of presentation pages using thefurther updated initial background model.
 10. The system according toclaim 9, wherein the processor further executes the set of instructionsto repeat the identifying further presentation pages, the comparing theidentified further presentation pages and the further updating theupdated initial background model until an updated background modelreaches a steady state.
 11. A non-transitory computer readable mediumstoring computer program comprising: computer usable program code forproviding an initial background model on a data processing system thatis independent of any particular image presentation; computer usableprogram code for identifying presentation pages of a set of presentationpages of the image presentation, wherein the foreground content of eachidentified presentation page of the set of presentation pages aredistinct and the background content of each identified presentation pageof the set of presentation pages are the same, and wherein thepresentation pages are part of a media stream provided to an imageprocessor, wherein the media stream comprises a plurality of imagepresentation types; computer usable program code for clustering contentportions from the identified presentation pages into a plurality ofdistinct presentation content sets, wherein each presentation contentset contains content portions that have a same image presentation type;computer usable program code locating potential background pixels bycomparing a first presentation page to a second presentation page,wherein the first presentation page and the second presentation page arelocated in a same set in the plurality of distinct presentation contentsets; computer usable program code for updating the initial backgroundmodel by incorporating the located potential background pixels into theinitial background model to form an updated initial background model;computer usable program code for determining whether the updated initialbackground model and the initial background model are the same;responsive to determining that the updated initial background model andthe initial background model are the same: computer usable program codefor outputting the updated initial background model; computer usableprogram code for distinguishing between the foreground content and thebackground content in each image presentation page of the plurality ofpresentation pages using the updated initial background model; andcomputer usable program code for repeating the steps of comparing theclustered content portions through the step of distinguishing betweenthe foreground content and the background content for each remaining setof the distinct presentation content sets.
 12. The non-transitorycomputer readable medium according to claim 11, and further comprising:responsive to determining that the updated initial background model andthe initial background model are not the same: computer usable programcode for identifying further presentation pages of the set ofpresentation pages whose foreground content are distinct and whosebackground content are the same; computer usable program code forcomparing the identified further presentation pages to locate furtherpotential background pixels; computer usable program code for furtherupdating the updated initial background model by incorporating thefurther located potential background pixels into the updated initialbackground model to form a further updated initial background model;computer usable program code for outputting the further updated initialbackground model; and computer usable program code for distinguishingbetween the foreground content and the background content in eachpresentation page of the plurality of presentation pages using thefurther updated initial background model.
 13. The non-transitorycomputer readable medium according to claim 12, and further comprising:computer usable program code for repeating the steps of identifyingfurther presentation pages, comparing the identified furtherpresentation pages and further updating the updated initial backgroundmodel until an updated background model reaches a steady state.